home *** CD-ROM | disk | FTP | other *** search
- #!/bin/sh
-
- HDPARM=/sbin/hdparm
- MAX_IDE_NR=1
-
- IDE_IO_0=0x1f0
- IDE_IO_1=0x170
-
- USE_IDE_DEV_0=/dev/hda
- USE_IDE_DEV_1=/dev/hdc
-
- usage () {
- if [ $# -gt 0 ]; then
- echo $* >&2
- echo
- fi
-
- echo "usage: $0 ide-channel-nr [off|on|rescan]" 2>&1
- exit 1
- }
-
- IDE_NR=$1
- MODE=$2
-
- do_register=0
- do_unregister=0
-
-
- if [ ! "$IDE_NR" ] || [ $IDE_NR -lt 0 ] || [ $IDE_NR -gt $MAX_IDE_NR ]; then
- usage "Unrecognized IDE-channel number"
- fi
-
- case "$MODE" in
- on ) do_register=1 ;;
- off ) do_unregister=1 ;;
- rescan ) do_unregister=1; do_register=1 ;;
- * ) usage "Unrecognized command" ;;
- esac
-
- eval "IDE_IO=\$IDE_IO_$IDE_NR"
- eval "USE_IDE_DEV=\$USE_IDE_DEV_$IDE_NR"
-
- [ $do_unregister -eq 1 ] && eval "$HDPARM -U $IDE_NR $USE_IDE_DEV > /dev/null"
- [ $do_register -eq 1 ] && eval "$HDPARM -R $IDE_IO 0 0 $USE_IDE_DEV > /dev/null"
-
-